
#ifndef _PYWINPCAPMODULE_H_
#define _PYWINPCAPMODULE_H_

#include <Python.h>
#include <structmember.h>
#define WPCAP
#include "pcap.h"
#include <Windows.h>

typedef
struct {
    PyObject_HEAD	
    PyStringObject *	m_device;
	PyStringObject *	m_name;
} pywinpcap_device_object;

typedef
struct {
    PyObject_HEAD
    pcap_t *					m_pcap;
	pywinpcap_device_object *	m_device;
} pywinpcap_capture_object;

typedef
struct {
    PyObject_HEAD
    PyStringObject *	m_pkt_data;
	struct timeval		m_timestamp;
} pywinpcap_packet_object;

#define PyWinPcapDevice_Check(op) ((op)->ob_type == &pywinpcap_device_type)
#define PyWinPcapCapture_Check(op) ((op)->ob_type == &pywinpcap_device_type)
#define PyWinPcapPacket_Check(op) ((op)->ob_type == &pywinpcap_packet_object)

#endif /* #ifndef _PYWINPCAPMODULE_H_ */